// class ContractModel {
//   final String id;
//   final String name;
//   final String hashrate;
//   final int remainingDays;
//   final DateTime expiryDate;
//   final ContractStatus status;
//   final String type;
//   final double? price;
//   final double? dailyIncome;
//   final String? description;

//   ContractModel({
//     required this.id,
//     required this.name,
//     required this.hashrate,
//     required this.remainingDays,
//     required this.expiryDate,
//     required this.status,
//     required this.type,
//     this.price,
//     this.dailyIncome,
//     this.description,
//   });

//   factory ContractModel.fromJson(Map<String, dynamic> json) {
//     return ContractModel(
//       id: json['id']?.toString() ?? '',
//       name: json['name'] ?? '',
//       hashrate: json['hashrate'] ?? '',
//       remainingDays: json['remaining_days'] ?? 0,
//       expiryDate: json['expiry_date'] != null 
//           ? DateTime.parse(json['expiry_date'])
//           : DateTime.now(),
//       status: _parseStatus(json['status']),
//       type: json['type'] ?? '',
//       price: json['price']?.toDouble(),
//       dailyIncome: json['daily_income']?.toDouble(),
//       description: json['description'],
//     );
//   }

//   Map<String, dynamic> toJson() {
//     return {
//       'id': id,
//       'name': name,
//       'hashrate': hashrate,
//       'remaining_days': remainingDays,
//       'expiry_date': expiryDate.toIso8601String(),
//       'status': status.name,
//       'type': type,
//       'price': price,
//       'daily_income': dailyIncome,
//       'description': description,
//     };
//   }

//   static ContractStatus _parseStatus(dynamic status) {
//     if (status == null) return ContractStatus.expired;
    
//     switch (status.toString().toLowerCase()) {
//       case 'running':
//       case '1':
//       case 'active':
//         return ContractStatus.running;
//       case 'expired':
//       case '0':
//       case 'inactive':
//         return ContractStatus.expired;
//       default:
//         return ContractStatus.expired;
//     }
//   }
// }

// enum ContractStatus {
//   running,
//   expired,
// }